Methods and systems for efficient multi-wire communications and crosstalk cancellation

ABSTRACT

Methods and systems are disclosed for efficient cancellation of crosstalk between signals transmitted over multiple signal paths. Symmetry is induced on the signals transmitted over the signal paths such that the crosstalk matrix becomes a matrix with structure. Such structured matrix may be a circulant matrix of which the inverse may be applied efficiently to transmitted symbols or received symbols. Application of such inverse may comprise the fast Fourier transform. Applications of the methods and systems disclosed include chip-to-chip communications, on-chip communications, communication over cables and storage of information.

CROSS REFERENCES TO RELATED APPLICATIONS

This application claims the benefit of U.S. Provisional Application No.61/829,384, filed May 31, 2013, titled “Methods and Systems forEfficient Multi-conductor Communications and Crosstalk Cancellation”,the contents of which are hereby incorporated in its entirety byreference.

FIELD OF INVENTION

Some embodiments relate to communications in general and in particularto transmission of signals capable of conveying information, whereincommunication takes place over channels that comprise multiple physicalpropagation paths.

BACKGROUND OF THE INVENTION

The goal of communication systems is to convey information reliably fromone physical location to another. Often information transmission needsto be performed at high speeds and power consumption needs to be low.

One communication scenario where this is the case is chip-to-chipcommunications where semiconductor components communicate with eachother. Examples of such components are processors, memories andapplication specific integrated circuits (ASICs).

Communication is not perfect and some sources of imperfections are noiseand non-idealities of the components making up the communication system.

The path between the source and destination of the information may bemodelled by a communication channel or channel. The channel may includethe effect of the main propagation medium, connectors and other circuitcomponents or integrated circuits (ICs). As an example, the channel indigital subscriber line communications (DSL) may include a twisted pairof copper conductors and a connector that connects the twisted pair tothe DSL modem. Furthermore, the channel may include the non-idealcharacteristics of the DSL receiver front-end.

The channel may comprise one or multiple signal paths. The signal pathis able to carry a physical quantity in the form of a signal. Theinformation to be conveyed is represented by symbols that may begenerated by a source. A symbol may be modulated into a signal that maybe transmitted over the signal path. At the destination the signals onthe signal paths are read and/or measured and a received symbol isextracted from which the original information may be recovered.

A signal path may be an electrical conductor, an electrical waveguide,an optical waveguide, etc. The signal path may include additionalelectrical and/or optical components and ICs.

In many scenarios communication takes place over a set of parallelsignal paths that comprise electrical conductors. The theory of thissetting of parallel electrical conductors is known to those of skill inthe art and may be described by the theory of multi-conductortransmission lines (MCTL).

An example of an application where parallel signal paths that compriseconductors are used is server backplane communications. Many signalpaths or pairs of signal paths are packed on a printed circuit board(PCB) to facilitate communications between e.g. CPU and memory. Anotherexample is the use of silicon interposers or through silicon vias (TSVs)used to connect two or more semiconductor components.

One major issue with communication over parallel signal paths is thatthe signal paths interact with each other. In a communication settingwhere different signals are to be transmitted over each of the signalpaths this leads to crosstalk between the transmitted and/or receivedsignals.

Crosstalk often limits the capabilities of a communication system. Forinstance, crosstalk may limit the amount of information that can betransmitted reliably. Moreover, it may also limit the maximum rate atwhich information can be transmitted since crosstalk often becomes worseat higher transmission rates.

In many communication systems where multiple signal paths are present,the spacing between the signal paths must be large enough such thatcrosstalk is below an acceptable level. This limits the allowabledensity of the signal paths and the total bandwidth that can beobtained.

The disadvantage of many prior art approaches to mitigate crosstalk isthat crosstalk is not cancelled completely. Moreover, the approaches tomitigate crosstalk by signal processing techniques lead to highimplementation and hardware complexity. This is especially the case whenthe number of signal paths increases since for such signal processingmethods complexity usually grows quadratically with the number of signalpaths. This results in increased silicon footprint and powerconsumption, which makes these prior art approaches of limited use ine.g. high-speed chip-to-chip communications.

There is currently no system able to mitigate and/or cancel crosstalkbetween multiple signal paths completely and is efficient in terms ofimplementation and hardware complexity. Embodiments of the invention aredirected toward solving these and other problems individually and/orcollectively.

BRIEF SUMMARY OF THE INVENTION

The present disclosure provides methods and systems able to mitigateand/or cancel crosstalk between multiple signal paths completely and areefficient in terms of implementation and hardware complexity. Inaccordance with aspects of the invention, symmetry is present betweenthe signals conveyed on the signal paths such that the crosstalk, whichmay be described by a crosstalk matrix, has structure. Such structureallows the crosstalk between the signals conveyed on the signal paths tobe mitigated in an efficient manner.

In accordance with a particular embodiment of the invention, thesymmetry between the signals leads to a crosstalk matrix that iscirculant. Such symmetry may be created by extending the main signalpaths by additional signal paths. The signals conveyed on theseadditional signal paths may be generated as a function of the signalsconveyed on the main signal paths. A transmitter and/or receiver maymitigate the effect of crosstalk between the signals on the main signalpaths. Such mitigation may be performed very efficiently due to thesymmetry that is present between the signals that are conveyed on themain signal paths.

In accordance with a particular embodiment of the invention the symmetrybetween the signals leads to a crosstalk matrix that is circulant. Suchsymmetry may be obtained by providing the signal paths in a twistedconfiguration. A transmitter and/or receiver may mitigate the effect ofcrosstalk. Such mitigation may be performed very efficiently due to thecirculant crosstalk matrix.

In accordance with a particular embodiment of the invention thecrosstalk is mitigated by the application of the inverse of thecirculant crosstalk matrix to the symbols representing information. In aparticular embodiment such application may be performed with fastalgorithms based on the discrete Fourier transform.

In accordance with a particular embodiment of the invention thecrosstalk is mitigated by the application of the inverse of thecirculant crosstalk matrix to the received symbols corresponding to thereceived signals on the signal paths. In a particular embodiment suchapplication may be performed with fast algorithms based on the discreteFourier transform.

In one aspect, provided is a method of transmitting symbols representinginformation on a plurality of signal paths where the crosstalk betweenthe symbols is described by a crosstalk matrix. The method may include:receiving a first set of symbols representing the information; forming asecond set of symbols based at least in part on the first set ofsymbols; forming a first set of signals based at least in part on thefirst set of symbols and the second set of symbols; and providing thefirst set of signals for transmission over the signal paths such thatthe crosstalk matrix is circulant.

In another aspect, provided is a method of transmitting symbolsrepresenting information on a plurality of signal paths where thecrosstalk between the symbols is described by a circulant crosstalkmatrix. The method may include receiving a first set of symbolsrepresenting the information; forming a second set of symbols based atleast in part on the first set of symbols and the inverse of thecirculant sampled crosstalk matrix; forming a first set of signals basedat least in part on the second set of symbols; and providing the firstset of signals for transmission over the signal paths.

In another aspect, a method is provided for receiving symbolsrepresenting information from a plurality of signal paths where thecrosstalk between the symbols is described by a circulant crosstalkmatrix. The method may include receiving a first set of symbols from thesignal paths and forming a second set of symbols based at least in parton the first set of symbols and the inverse of the circulant sampledcrosstalk matrix.

In another aspect, an apparatus capable of conveying symbolsrepresenting information where the crosstalk between the symbols isdescribed by a crosstalk matrix. The apparatus may include a pluralityof signal paths arranged in such a way that the crosstalk matrix iscirculant; and a receiver configured to receive a first set of symbols;and form a second set of symbols based at least in part on the first setof symbols and the inverse of the circulant sampled crosstalk matrix.

This Brief Summary of the Invention is provided to introduce a selectionof concepts in a simplified form that are further described below in theDetailed Description of the Invention. This Brief Summary of theInvention is not intended to identify key or essential features of theclaimed subject matter, nor is it intended to be used as an aid indetermining the scope of the claimed subject matter. Other objectsand/or advantages of the present invention will be apparent to one ofordinary skill in the art upon review of the Detailed Description of theInvention and the included figures.

BRIEF DESCRIPTION OF THE DRAWINGS

FIG. 1 is a schematic diagram depicting aspects of an examplecommunication system in accordance with at least one embodiment of theinvention.

FIG. 2 is a schematic diagram depicting aspects of a transmitteroperating over a plurality of signal paths in accordance with at leastone embodiment of the invention.

FIG. 3 is a schematic diagram depicting aspects of a transmitteroperating over a plurality of signal paths in accordance with at leastone embodiment of the invention.

FIG. 4 is a schematic diagram depicting aspects of a receiver receivingfrom a plurality of signal paths in accordance with at least oneembodiment of the invention.

FIG. 5 is a schematic diagram depicting aspects of a transmitter inaccordance with at least one embodiment of the invention.

FIG. 6 is a schematic diagram depicting aspects of a receiver inaccordance with at least one embodiment of the invention.

FIG. 7 is a schematic diagram depicting aspects of a transmitteroperating over a plurality of signal paths in accordance with at leastone embodiment of the invention.

FIGS. 8A and 8B are schematic diagrams depicting aspects of a channelcomprising a plurality of signal paths in accordance with at least oneembodiment of the invention.

FIG. 9 exemplifies a process that may be implemented by a transmitter inaccordance with at least one embodiment of the invention.

FIG. 10 is a schematic diagram depicting aspects of a transmitteroperating over a plurality of signal paths in accordance with at leastone embodiment of the invention.

FIG. 11 is a schematic diagram of the cross section of a plurality ofsignal paths in accordance with at least one embodiment of theinvention.

FIG. 12 is a schematic diagram of the cross section of a plurality ofsignal paths in accordance with at least one embodiment of theinvention.

FIG. 13 is a schematic diagram of the cross section of a plurality ofsignal paths in accordance with at least one embodiment of theinvention.

FIG. 14 is a schematic diagram of a plurality of signal paths inaccordance with at least one embodiment of the invention.

FIG. 15 exemplifies a process that may be implemented by a transmitterin accordance with at least one embodiment of the invention.

FIG. 16 exemplifies a process that may be implemented by a transmitterin accordance with at least one embodiment of the invention.

FIG. 17 exemplifies a process that may be implemented by a receiver inaccordance with at least one embodiment of the invention.

FIG. 18 is a schematic diagram of storage cells in accordance with atleast one embodiment of the invention.

FIG. 19 is a schematic diagram of storage cells in accordance with atleast one embodiment of the invention.

FIG. 20 is a schematic diagram of read-and-write circuitry for aplurality of storage cells in accordance with at least one embodiment ofthe invention.

DETAILED DESCRIPTION OF THE INVENTION

The goal of communication systems is to convey information reliably fromone physical location to another. The path between the source of theinformation and the destination of the information may be modelled by acommunication channel or channel. The channel may include the effect ofthe main propagation medium, connectors and other circuit components orintegrated circuits

The input to the channel is a physical waveform or signal that mayrepresent a physical quantity. Some examples of such physical quantitiesare voltages, currents and intensities. Other examples are known tothose of skill in the art.

Once transmitted, the signal traverses the elements making up thechannel. In many cases the spatial extent of the signal is somewhatconfined which allows one to identify a propagation path. Suchconfinement is often the result of interfaces between differentmaterials. The propagation path of the signal is referred to as thesignal path.

Examples of signal paths and/or parts of signal paths are an electricalconductor of a transmission line, an electrical waveguide that may beused to guide electromagnetic radiation and an optical waveguide oroptical fibre.

The signal path may comprise other elements encountered in between thesource and destination. For instance in the setting of chip-to-chipcommunications examples of such elements are transmission lines, bondwires, through silicon vias (TSVs), coupling capacitors and additionalelectronic components such as amplifiers.

In some cases a signal path comprises a pair of physical wires orpropagation paths. For instance in chip-to-chip communicationdifferential signalling is often used and a signal path may comprise adifferential pair of wires. In such case the physical quantityrepresented by the signal may be the difference between two physicalquantities such as voltages and/or currents.

The information transmitted by the transmitter of the communicationsystem is encoded and/or modulated into some properties of the signal.Examples of basic modulation methods are amplitude modulation andfrequency modulation. An example of a more advanced modulation method isorthogonal frequency division multiplexing (OFDM). Many other modulationmethods are known to those of ordinary skill in the art

A channel may comprise multiple signal paths on which signals carryinginformation may propagate. Such a setting is now further described withreference to FIG. 1.

FIG. 1 exemplifies a communication system where information available insource 100 is transmitted to a destination 120. The channel 110comprises n signal paths 115. For the purpose of the teachings in thisdisclosure, the number of signal paths n is an integer larger thanthree. The number of signal paths n may be equal to e.g. 4, 5, 8, 12,16, 32, 100, etc.

A transmitter 130 generates n signals for transmission over signal paths115 based on the information in 100. A receiver 140 receives the signalspresent on the signal paths 115. Based on these signals the informationtransmitted is recovered.

New information may periodically become available in the source 100. Forinstance every T seconds new information may become available. Suchinformation may originate from an external source. The information maybe available as binary digits (bits) or as other representations knownto those of skill in the art.

To further set the context for the teachings of this application, ageneral high-level model of the communication system is described next.Without loss of generality it is assumed that the effect of the channelon the information transmitted over the signal paths 110 may bedescribed in discrete-time by the equation y=Hx, where H is a n×nmatrix. Furthermore, x and y are vectors of size n. The ith component ofx and y are denoted by x_(i) and y_(i), respectively. In someembodiments the entries of H, x, y are real numbers. Other options maybe possible and the entries may be for instance complex numbers.

The vector x is a representation of the information in source 100 thatmay be generated by transmitter 130. The key element that makes x arepresentation of the information in source 100 is that the relationbetween x and the information is such that the information may berecovered from x without loss.

The ith component of x may be transmitted over the ith signal path ofthe signal paths 115. The vector y may represent an estimate of theinformation transmitted as made by the receiver 140. The ith componentof y may be received from the ith signal path of signal paths 115.

The matrix H summarizes the effect of the channel 110 and its signalpaths 115. The matrix H is called the sampled crosstalk matrix. In anideal communication system the matrix H is a diagonal matrix. In presentteachings crosstalk is present and by definition the sampled crosstalkmatrix is not a diagonal matrix. The off diagonal elements causecrosstalk between the components of x.

One may compensate for the crosstalk caused by the sampled crosstalkmatrix H. Methods may be used that are related to multiple-inputmultiple-output (MIMO) systems. Such methods may for instance apply theinverse of H to either x or y at the transmitter and/or receiver,respectively. However, the major downside is that the application ofsuch inverse has complexity O(n²). For many applications this leads toprohibitively high hardware complexity. The teachings of thisapplication provide for embodiments that allow for much lowercomplexity.

A First Embodiment

A first embodiment is now further described with reference to FIG. 2.FIG. 2 shows a transmitter 230 that operates on channel 110 comprising nsignal paths 115. The signals generated by transmitter 230 for each ofthe signal paths 115 are denoted by x₀(t), . . . , x_(n−1)(t). Here itis understood that signal x_(i)(t) is transmitted on the ith signal pathwhere the index i runs from 0 to n−1. At the location along the signalpaths 115 where each of the signals may be read/received, the signalsare denoted by y₀(t) to y_(n−1)(t).

The information available in source 200 may be represented by thenumbers or symbols s₀, . . . , s_(n−1). In an embodiment these symbolsare real numbers. Each of these symbols may represent one or moreinformation bits. The vector with components s₀, . . . , s_(n−1) isdenoted by s.

The symbols s₀, . . . , s_(n−1) may be encoded into n other symbols thatare denoted by x₀, . . . , x_(n−1). The vector with components x₀, . . ., x_(n−1) is denoted by x. In some embodiments the vector x is also arepresentation for the information in source 200.

The relation between the symbols x_(i) and the transmitted signalx_(i)(t) may be as follows. The symbol x_(i) may represent acharacteristic of the signal x_(i)(t). Examples of such characteristicsare amplitude, phase, wavelength and frequency.

In an embodiment, the transmitter 230 may map the symbols s₀, . . . ,s_(n−1) to the symbols x₀, . . . , x_(n−1) by applying a n×n matrixC_(T) to s, i.e. x=C_(T)s. In some embodiments the matrix C_(T) has realentries. Furthermore, C_(T) is not orthogonal.

In general, the operation of multiplying a matrix A with a vector b isreferred to as applying the matrix A to b. It should be understood thatsuch application may be performed by analog and/or digital hardwarecomponents or other suitable means that may perform such matrix-vectormultiplication.

The transmitter 230 may generate the signals x₀(t), . . . , x_(n−1)(t)based on the symbols x₀, . . . , x_(n−1). Such functionality is providedas modulation.

One may further associate a set of n symbols with the signals y₀(t), . .. , y_(n−1)(t). These symbols are denoted by y₀, . . . y_(n−1) and maybe extracted from y₀(t), . . . , y_(n−1)(t) by various methods. Forinstance when x₀, . . . , x_(n−1) corresponds to the amplitude of x₀(t),. . . , x_(n−1)(t), the numbers y₀, . . . , y_(n−1) may be obtained bysampling the signals y₀(t), . . . , y_(n−1)(t).

In an embodiment the relation between and y₀, . . . , y_(n−1) and x₀, .. . , x_(n−1) may be described by a linear relation which may beexpressed as y=Hx. Both x and y are vectors where there ith component isgiven by x_(i) and y_(i), respectively. The matrix H is the sampledcrosstalk matrix as defined before.

In accordance with aspects of the invention the sampled crosstalk matrixH is a matrix with special structural properties. In some embodimentssuch special structural property is achieved by inducing symmetrybetween the signals x₀(t), . . . , x_(n−1)(t) propagating on the signalpaths. Methods to induce such symmetry between the signals x₀(t), . . ., x_(n−1)(t) propagating on the signal paths are discussed below underStructured crosstalk matrices.

The structural property of H allows the effect of crosstalk to becancelled more efficiently. In an embodiment the structural property issuch that the sampled crosstalk matrix H is a circulant matrix. In suchcase the effect of H may be cancelled with only a complexity of aboutO(n log n) instead of O(n²). This eventually leads to much lowerimplementation complexity.

A more in-depth discussion of several aspects of the teachings disclosedso far is given below under the Detailed Embodiment Section below. Afterthat, several possible embodiments illustrating various aspects ofpresent teachings are given. Some embodiments may exemplify how symmetrybetween the signals x₀(t), . . . , x_(n−1)(t) may be achieved and othersmay exemplify how the effects of crosstalk may be cancelled efficientlywith processing at the transmitter and/or receiver. Yet otherembodiments may exemplify how the present teachings may be employed forother applications.

Detailed Embodiment

Many channels with multiple inputs and multiple outputs may be modelledas a linear system. A channel with n inputs and n outputs may be definedby a n×n channel matrix that is denoted by H(t). When the inputs of thechannel are given by x₀(t), . . . , x_(n−1)(t), the channel outputs maybe denoted by y₀(t), . . . , y_(n−1)(t). Furthermore, the channeloutputs may be related to the channel inputs by a convolution with thematrix H(t) as given by Eqn. 1.

$\begin{matrix}{\begin{bmatrix}{y_{0}(t)} \\{y_{1}(t)} \\\vdots \\{y_{n - 1}(t)}\end{bmatrix} = {{H(t)}*\begin{bmatrix}{x_{0}(t)} \\{x_{1}(t)} \\\vdots \\{x_{n - 1}(t)}\end{bmatrix}}} & \lbrack {{Eqn}.\mspace{14mu} 1} \rbrack\end{matrix}$In Eqn. 1 the operator * denotes the convolution operator. The matrixH(t) may be defined by Eqn. 2.

$\begin{matrix}{{H(t)} = \begin{bmatrix}{h_{0,0}(t)} & {h_{0,1}(t)} & \ldots & {h_{0,{n - 1}}(t)} \\{h_{1,0}(t)} & \; & \; & {h_{1,{n - 1}}(t)} \\\vdots & \; & \ddots & \vdots \\{h_{{n - 1},0}(t)} & {h_{{n - 1},1}(t)} & \ldots & {h_{{n - 1},{n - 1}}(t)}\end{bmatrix}} & \lbrack {{Eqn}.\mspace{14mu} 2} \rbrack\end{matrix}$The matrix H(t) is called the crosstalk matrix. The function h_(i,j)(t)may be interpreted as the impulse response from the jth channel input tothe ith channel output. It is understood that the convolution operatorsignifies that convolution instead of multiplication is used in thematrix-vector multiplication of Eqn. 1. This implies that for instancey_(i)(t) can be written as Eqn. 3.y _(i)(t)=Σ_(j=0) ^(n−1) h _(i,j)(t)*x _(j)(t)  [Eqn. 3]

In an ideal communication system the matrix H(t) may be a diagonalmatrix. In present teachings crosstalk is present and by definition thecrosstalk matrix is not a diagonal matrix. The off diagonal elementscause crosstalk between the transmitted signals x₀(t), . . . ,x_(n−1)(t).

An example of a transmitter in accordance with the teachings of thisapplication is now described with reference to FIG. 3. The transmitter230 comprises a DMOD unit 315 that takes as its input the information insource 200. The information generated by source 200 may represent bits,encoded bits any other convenient way to represent information.

A new set of source symbols may be available on a periodic basis. Forinstance the source may be an external source of information thatgenerates a new set of source symbols every T seconds where T is apredetermined number that is typically less than 1. T may be forinstance 1 nanosecond. The source bits may also be generated outside thecommunication system.

The DMOD unit 315 may take the information generated by the source 200at time kT and transform these into a set of n symbols that are denotedby s_(k,0), . . . , s_(k,n−1). The symbols s_(k,0), . . . , s_(k,n−1)are a representation for the information in source 200. The task of theDMOD unit 315 may be to map a set of information bits to symbols of asignal constellation.

A signal constellation may be defined by a set of predetermined real orcomplex numbers. Many signal constellations are known to those of skillin the art. Signal constellations with an equal spacing between theconstellation symbols are often referred to as M-PAM signalconstellations. For example a 2-PAM signal constellation has twoconstellation symbols and may be defined by the set {−1,1}. A 2-PAMsignal constellation is also called a binary phase shift keying (BPSK)signal constellation. Other options are possible. In some embodimentsthe signal constellation consists of real constellation symbols.

The transmitter 230 comprises a transmitter crosstalk cancellation (TCC)unit 320 that takes as its input the n symbols generated by the DMODunit 315 and outputs another set of n symbols which are denoted byx_(k,0), . . . , x_(k,n−1). In some embodiments the symbols x_(k,0), . .. , x_(k,n−1) are a representation for the information in source 200.

In an embodiment the operation of the TCC unit 320 is characterized by alinear operation. The output symbols of the TCC unit 320 may beexpressed in terms of the outputs of the DMOD unit 315 as xC_(T)s. Inthis equation C_(T) is a n×n matrix. It is understood that thecomponents of x and s are given by x_(k,0), . . . , x_(k,n−1) ands_(k,0), . . . , s_(k,n−1), respectively. In some embodiments the matrixC_(T) has real entries and is not an orthogonal matrix.

The symbols generated by the TCC unit 320 are input to a CMOD unit 325.The task of the CMOD unit 325 is to generate a set of n continuous-timesignals based on at least part of the numbers provided by the TCC unit320.

The CMOD unit 325 may perform pulse-amplitude modulation (PAM) with apulse shape p(t). The pulse shape may be a return-to-zero (RZ) ornon-return-to-zero (NRZ) pulse shape. Many other options for pulseshapes are known in the art and may be used. The amplitude of the pulsestransmitted on each of the signal paths 115 may be chosen according tothe symbols x_(k,0), . . . , x_(k,n−1) supplied by the TCC unit 320. Theoutputs of the CMOD unit 325 are transmitted on the signal paths 115 ofthe channel 110.

When the CMOD unit 325 performs PAM with a pulse shape p(t), the signalx_(i)(t) transmitted on the ith signal path of signal paths 115 may bewritten as Eqn. 4.x _(i)(t)=Σ_(k) x _(k,i) p(t−kT)  [Eqn. 4]

When PAM is used, the channel may also be defined in terms of theresponse of the channel to the pulse shape p(t). For this purpose thepulse response p_(i,j)(t) may be defined as Eqn. 5.p _(i,j)(t)=h _(i,j)(t)*p(t)  [Eqn. 5]

A receiver in accordance with at least one embodiment is now furtherdescribed with reference to FIG. 4. The input to the receiver 410 arethe signals y₀(t), . . . , y_(n−1)(t) that are present on signal paths115 of channel 110.

The main task of the receiver is to estimate the information transmittedby the transmitter 230 of FIG. 3. Based on the signals y₀(t), . . . ,y_(n−1)(t), the receiver 410 may generate an estimate for s_(k,0), . . ., s_(k,n−1). To accomplish this, the receiver 410 may comprise an ICMODunit 420, a receiver crosstalk cancellation (RCC) unit 430 and an IDMODunit 440.

The task of the ICMOD unit 420 is to receive and/or sense the signalspresent on the signal paths 115. The ICMOD unit 420 may sample outputsignals y₀(t), . . . , y_(n−1)(t) at t=kT_(s) where T_(s) is a samplingtime and k a number that may be an integer.

The samples generated by the ICMOD unit at time T_(s)k are denoted byy_(k,0), . . . , y_(k,n−1). Here it is understood thaty_(k,i)=y_(i)(kT_(s)).

The receiver 410 may comprise additional functionality. For instance thereceiver 410 may comprise a clock-and-data-recovery (CDR) algorithm thatis used to find the sample moment T_(s) according to an optimalitycriterion such as maximum signal-to-noise ratio.

The operation of sampling should not be considered limiting. Instead ofsampling one may also use other operations. One may for instance averageor integrate the received signals instead of a pure sampling. Anotheroption is to use a matched filter.

The sampled channel outputs, which are denoted by y_(k,0), . . . ,y_(k,n−1), may be written at time kT_(s) as Eqn. 6.

$\begin{matrix}{\begin{bmatrix}y_{k,0} \\\vdots \\y_{k,{n - 1}}\end{bmatrix} = {H\begin{bmatrix}x_{k,0} \\\vdots \\x_{k,{n - 1}}\end{bmatrix}}} & \lbrack {{Eqn}.\mspace{14mu} 6} \rbrack\end{matrix}$The vector y is defined as a vector of size n with components y_(k,0), .. . , y_(k,n−1). The matrix H may be expressed as Eqn. 7 and is thesampled crosstalk matrix as defined before.

$\begin{matrix}{H = \begin{bmatrix}{p_{0,0}( {kT}_{s} )} & {p_{0,1}( {kT}_{s} )} & \ldots & {p_{0,{n - 1}}( {kT}_{s} )} \\{p_{1,0}( {kT}_{s} )} & {p_{1,1}( {kT}_{s} )} & \ldots & {p_{1,{n - 1}}( {kT}_{s} )} \\\vdots & \vdots & \ddots & \vdots \\{p_{{n - 1},0}( {kT}_{s} )} & {p_{{n - 1},1}( {kT}_{s} )} & \ldots & {p_{{n - 1},{n - 1}}( {kT}_{s} )}\end{bmatrix}} & \lbrack {{Eqn}.\mspace{14mu} 7} \rbrack\end{matrix}$

The input to the RCC unit 430 are the samples/numbers y_(k,0), . . . ,y_(k,n−1). The RCC unit 430 performs an operation on y_(k,0), . . . ,y_(k,n−1) that may facilitate crosstalk cancellation. In an embodimentsuch operation is a linear operation characterized by a n×n matrixC_(R). The outputs of the RCC unit are denoted by z_(k,0), . . . ,z_(k,n−1) and may be expressed as z=C_(R)y. Here it is understood that zand y are vectors with components z_(k,0), . . . , z_(k,n−1) andy_(k,0), . . . , y_(k,n−1), respectively. In some embodiments the matrixC_(R) has real entries and is not an orthogonal matrix.

The IDMOD unit 440 may recover the information originally present insource 200 of FIG. 3 from z_(k,0), . . . , z_(k,n−1). For this purposethe IDMOD unit 440 may for instance perform demapping of the signalconstellation symbols to the original source bits. The final informationis available at 450.

In accordance with aspects of the invention the sampled crosstalk matrixH is a matrix with special structural properties. These structuralproperties may follow from the structural properties of the crosstalkmatrix H(t). In some embodiments such structural property is achieved byinducing symmetry between the signals x₀(t), . . . , x_(n−1)(t)propagating on the signal paths.

The special structural properties of the sampled crosstalk matrix Hallows the effect of crosstalk to be cancelled more efficiently. In anembodiment the structural property is such that the sampled crosstalkmatrix H is a circulant matrix. In such case the effect of H may becancelled with only a complexity of about O(n log n) instead of O(n²)which eventually leads to much lower implementation complexity.

For instance when the channel comprises n=32 signal paths, cancellationof crosstalk would require about 1024 multiplications. Hardwaremultipliers may implement such multiplications and 1024 of suchmultipliers may be required to achieve sufficient throughput. Withpresent teachings cancellation of the crosstalk would require in theorder of 160 multipliers, which is a substantial savings.

Detailed Operation of the TCC and RCC Units

The transmitter 230 of FIG. 3 may represent information by symbolss_(k,0), . . . , s_(k,n−1) and generate symbols x_(k,0), . . . ,x_(k,n−1) by application of the matrix C_(T). The task of the receiver410 of FIG. 4 comprises the detection of the symbols s_(k,0), . . . ,s_(,n−1) based on the sampled channel outputs y_(k,0), . . . ,y_(k,n−1). For this purpose the receiver 410 may apply the matrix C_(R)to y_(k,0), . . . , y_(k,n−1) to generate the symbols z_(k,0), . . . ,z_(k,n−1).

In some embodiments the relation between symbols z_(k,0), . . . ,z_(k,n−1) and symbols s_(k,0), . . . , s_(k,n−1) can be expressed by adiagonal matrix. In such case the communication is free of crosstalk.

In some embodiments the cancellation of the crosstalk may be performedat the transmitter by the TCC unit 320 of FIG. 3 by an appropriatechoice of the matrix C_(T). In other embodiments the cancellation of thecrosstalk may be performed at the receiver by the RCC unit 430 of FIG. 4by an appropriate choice of the matrix C_(R).

The relation between the vectors z and s may be expressed asz=C_(R)HC_(T)s. To cancel crosstalk one requires that C_(R)HC_(T)=D_(n)where D_(n) denotes a diagonal matrix of size n×n. In some embodiments,the diagonal matrix D_(n) is the identity matrix of size n which isdenoted by I_(n). The equality may be achieved by various choices ofC_(T) and C_(R).

In some embodiments, the signal paths and/or transmitter and/or receiverare configured such that the structural properties of the sampledcrosstalk matrix H are such that H is a circulant matrix.

A circulant sampled crosstalk matrix H can be diagonalized as WH=DWwhere W is the discrete Fourier transform (DFT) matrix of size n.Furthermore, D is a n×n diagonal matrix where the diagonal elements aredenoted by d_(i) for i=0, . . . , n−1. The d_(i) are the eigenvalues ofthe matrix H. The inverse of the matrix D is denoted by D⁻¹. The ithdiagonal element of D⁻¹ is given by the reciprocal of d_(i).

Instead of the DFT matrix W, the inverse discrete Fourier transform(IDFT) matrix may be used to diagonalize H. The inverse of the DFTmatrix is the complex conjugate transpose of W which is denoted byW^(H).

Embodiments for cancellation of crosstalk when the sampled crosstalkmatrix is circulant are now further described with reference to FIG.5-6.

FIG. 5 further exemplifies a transmitter 230 that operates over achannel that comprises multiple signal paths 115. A sampled crosstalkmatrix H may characterize the channel. In an embodiment H is a circulantmatrix and may be written as H=W^(H)DW.

The input of the TCC unit 320 are the symbols s_(k,0), . . . ,s_(k,n−1). The TCC unit 320 generates the output symbols x_(k,0), . . ., x_(k,n−1) as x=C_(T)s where C_(T)W^(H)D⁻¹W. The matrix C_(T) is theinverse of the circulant sampled crosstalk matrix.

The transmitter 230 may comprise the units 510, 520, 530 whose jointoperation may apply the matrix C_(T) to symbols s_(k,0), . . . ,s_(k,n−1). Unit 510 may apply the matrix W to the vector of symbols s.Unit 520 operates on the output of unit 510 and may apply the matrix D⁻¹to the outputs of unit 510. Unit 530 may apply the matrix W^(H) to theoutput of unit 520 to generate the symbols x_(k,0), . . . , x_(k,n−1).

The operation of the transmitter 230 of FIG. 5 is such that at thereceiver the sampled channel outputs y_(k,0), . . . , y_(k,n−1) asdefined by Eqn. 6 can be written asy=Hx=W^(H)DWC_(T)s=W^(H)DWW^(H)D⁻¹Ws=s. Hence the sampled channeloutputs y are equal to the symbols s and crosstalk free transmission isachieved. A receiver operating in conjunction with the transmitter ofFIG. 5 may use a C_(R) that is equal to C_(R)=I_(n). This shows that noadditional crosstalk cancellation is required at such receiver.

FIG. 6 further exemplifies a receiver 410 of FIG. 4 that operates over achannel that comprises multiple signal paths 115. The input to the RCCunit 430 are the sampled channel outputs y_(k,0), . . . , y_(k,n−1). TheRCC unit 430 generates the output symbols z_(k,0), . . . , z_(k,n−1) asz=C_(R)y where C_(R)=W^(H)D⁻¹W. The matrix C_(R) is the inverse of thecirculant sampled crosstalk matrix.

The RCC unit 430 may comprise the units 610, 620 and 630 whose jointoperation may apply the matrix C_(R) to the sampled channel outputs.Unit 610 may apply the matrix W to the sampled channel outputs y_(k,0),. . . , y_(k,n−1). Unit 620 may apply the matrix D⁻¹ to the output ofunit 610. Unit 630 may apply the matrix W^(H) to the output of unit 620to generate symbols z_(k,0), . . . , z_(k,n−1).

In an embodiment, a transmitter operates in conjunction with thereceiver 410 of FIG. 6. Such transmitter may generate the symbolsx_(k,0), . . . , x_(k,n−1) as x=C_(T)s where C_(T)=I_(n). With theoperation of the receiver of FIG. 6, the symbols z_(k,0), . . . ,z_(k,n−1) may be expressed asz=W^(H)D⁻¹Wy=W^(H)D⁻¹WHs=W^(H)D⁻¹WW^(H)DWs=s. The symbols z are equal tothe symbols s and crosstalk free transmission is achieved.

In some embodiments the sampled crosstalk matrix is circulant and hasreal entries. Furthermore, one of the matrices C_(T) and C_(R) is chosenas the inverse of the sampled crosstalk matrix. In this case therespective matrix C_(T) or C_(R) is a circulant matrix with real entriesas well. Furthermore, this implies that this matrix is not an orthogonalmatrix. This follows from the fact that an orthogonal and circulantmatrix can only be equal to a scaled version of the identity matrixI_(n) which contradicts the definition of H as a matrix that is notdiagonal.

A communication system employing the transmitter of FIG. 5 cancelscrosstalk at the transmitter and no additional crosstalk cancellationmay be required at the receiver. A communication system employing thereceiver of FIG. 6 cancels crosstalk at the receiver and no additionalcrosstalk cancellation may be required at the transmitter.

As one of skill in the art will recognize the application of the DFT andIDFT matrices W and W^(H) may be performed with a fast algorithm such asthe fast Fourier transform (FFT). This significantly reduces thecomplexity and allows crosstalk to be cancelled with a complexity ofabout O(n log n) instead of O(n²) which would be the complexity of thedirect application of the inverse of the sampled crosstalk matrix H.This leads to a much lower hardware and implementation complexity.

A family of FFT algorithms may be the radix-2 type FFT algorithms. Theradix-2 algorithms rely on the fact that n is an integer power of 2. Ina similar way Radix-p algorithms may be used for the computation of theDFT and/or IDFT where n can be expressed as an integer power of p.

Another family of FFT algorithms is the family of prime-factoralgorithms (PFAs). The main idea of the PFA is to break down n into aproduct of relatively prime factors. For instance when n=24, n may bewritten as n=3×8. As known to those of skill in the art, efficientalgorithms can be derived for the computation of the DFT and IDFT when ncan be factored into a product of relatively prime factors.

Structured Crosstalk Matrices

According to the teachings of this application, crosstalk may becancelled efficiently when symmetry is induced between the signalsconveyed on the signal paths. In some embodiments such symmetry leads toa crosstalk matrix H(t) and/or a sampled crosstalk matrix H that arecirculant.

A first method to induce symmetry between the signals conveyed on thesignal paths is now further described with reference to FIG. 7. FIG. 7exemplifies a channel 110 that comprises n signal paths 115. The channel110 further comprises a set of L additional signal paths 720. The signalpaths 720 are referred to as the spatial extension (SE) signal paths.

The transmitter 230 comprises a spatial extension (SE) unit 710. The SEunit 710 takes as its input the outputs x_(k,0), . . . , x_(k,n−1) ofthe TCC unit 320 and generates the symbols x_(k,n), . . . , x_(k,n+L−1).The input to the CMOD unit 325 are the symbols x_(k,0), . . . ,x_(k,n+L−1). The task of the CMOD unit 325 is to generate a set of n+Lcontinuous-time signals based on at least part of the symbols providedby the TCC unit 320 and the SE unit 710.

In an embodiment, the CMOD unit 325 may perform PAM with a pulse shapep(t). In this case the CMOD unit 325 may generate the output signalsx₀(t), . . . , x_(n+L−1)(t) as given by Eqn. 4. The signals x₀(t), . . ., x_(n+L−1)(t) may be transmitted on the signal paths 115 of the channel110.

In an embodiment the symbols x_(k,n), . . . , x_(k,n+L−1) and thecorresponding signals x_(n)(t), . . . , x_(n+L−1)(t) are generated insuch a way that the crosstalk between signals x₀(t), . . . , x_(n−1)(t)is described by a crosstalk matrix H(t) that is circulant. In furtherembodiments where PAM is used, the sampled channel crosstalk matrix H iscirculant also.

A circulant crosstalk matrix H(t) may be achieved by choosing x_(k,n), .. . , x_(k,n+L−1) as a subset of x_(k,0), . . . , x_(k,n−1). In suchcase the signals x_(n)(t), . . . , x_(n+L−1)(t) transmitted on theextension signal paths 720 are a copy of some of the signals x₀(t), . .. , x_(n−1)(t) which are transmitted on the signal paths 115.

In an embodiment, the signal paths are configured in linear array. Howto obtain a circulant crosstalk matrix for such signal pathconfiguration is now further described with reference to FIG. 8A andFIG. 8B. FIG. 8A and FIG. 8B exemplify a channel 110 that comprises nsignal paths 810. FIG. 8A is a top-level view of the signal paths whileFIG. 8B is a cross sectional view of the signal paths.

The configuration of FIG. 8A and FIG. 8B may be an example of a MCTLwhere the signal paths 810 are conductors surrounded by a dielectricmedium.

The channel comprising signal paths 810 may be characterized by a matrixH(t) as defined by Eqn. 2.

In an embodiment, the configuration of the signal paths of the channelis such that the components h_(i,j)(t) of the matrix H(t) are given byEqn. 8 in case |i−j|=|k−l| holds.h _(i,j)(t)=h _(k,l)(t)  [Eqn. 8]

In case Eqn. 8 holds the matrix H(t) may be expressed as Eqn. 9 whereh_(k)(t)=h_(i,j)(t) for k=|i−j|.

$\begin{matrix}{{H(t)} = \begin{bmatrix}{h_{0}(t)} & {h_{1}(t)} & {h_{2}(t)} & {h_{3}(t)} & \ldots & {h_{n - 1}(t)} \\{h_{1}(t)} & {h_{0}(t)} & {h_{1}(t)} & {h_{2}(t)} & \ldots & {h_{n - 2}(t)} \\{h_{2}(t)} & {h_{1}(t)} & {h_{0}(t)} & {h_{1}(t)} & \ldots & {h_{n - 3}(t)} \\\; & \; & \; & \; & \; & \; \\\vdots & \; & \; & \; & \ddots & \vdots \\{h_{n - 1}(t)} & {h_{n - 2}(t)} & {h_{n - 3}(t)} & \; & \ldots & {h_{0}(t)}\end{bmatrix}} & \lbrack {{Eqn}.\mspace{14mu} 9} \rbrack\end{matrix}$

Eqn. 8 may be realized by introducing L₁ dummy signal paths 820 and L₂dummy signal paths 830. The integers L₁ and L₂ are chosen large enoughsuch that Eqn. 8 holds or at least holds with sufficient precision.Sufficient precision may mean for instance that equality holds in Eqn. 8within an error margin of 5%. From a physical point of view the dummysignal paths 820 and 830 render the physical environment for each of thesignal paths 810 equivalent.

In many situations encountered in practice there exists a d such thatfor i>d the value of h_(i)(t) is negligible small for all t. How smallh_(i)(t) needs to be to be negligible depends on the application. Forinstance h_(i)(t) may be negligible small when h_(i)(t) is less than0.05 for all t. Without loss of generality it is assumed that h_(i)(t)=0for the integer d where for all i>d h_(i)(t) is negligible small.

An example of a matrix H(t) where h_(i)(t) is negligible small for i>2is given by Eqn. 10 for the case where the number of signal paths 810 isequal to 8 (n=8).

$\begin{matrix}{{H(t)} = \begin{bmatrix}{h_{0}(t)} & {h_{1}(t)} & {h_{2}(t)} & 0 & 0 & 0 & 0 & 0 \\{h_{1}(t)} & {h_{0}(t)} & {h_{1}(t)} & {h_{2}(t)} & 0 & 0 & 0 & 0 \\{h_{2}(t)} & {h_{1}(t)} & {h_{0}(t)} & {h_{1}(t)} & {h_{2}(t)} & 0 & 0 & 0 \\0 & {h_{2}(t)} & {h_{1}(t)} & {h_{0}(t)} & {h_{1}(t)} & {h_{2}(t)} & 0 & 0 \\0 & 0 & {h_{2}(t)} & {h_{1}(t)} & {h_{0}(t)} & {h_{1}(t)} & {h_{2}(t)} & 0 \\0 & 0 & 0 & {h_{2}(t)} & {h_{1}(t)} & {h_{0}(t)} & {h_{1}(t)} & {h_{2}(t)} \\0 & 0 & 0 & 0 & {h_{2}(t)} & {h_{1}(t)} & {h_{0}(t)} & {h_{1}(t)} \\0 & 0 & 0 & 0 & 0 & {h_{2}(t)} & {h_{1}(t)} & {h_{0}(t)}\end{bmatrix}} & \lbrack {{Eqn}.\mspace{14mu} 10} \rbrack\end{matrix}$

In an embodiment, the signal paths 820 and 830 are not only used asdummy signal paths to render the physical environment for each of thesignal paths 810 equivalent. Signal paths 820, 830 may correspond to theSE signal paths 720 of FIG. 7.

Let x_(n)(t), . . . , x_(n+L1−1)(t) denote the signals that may betransmitted by CMOD unit 325 of FIG. 7 on SE signal paths 830.Furthermore, let x_(−L2)(t), . . . , x⁻¹(t) denote the signals that maybe transmitted by CMOD unit 325 of FIG. 7 on SE signal paths 820.

In an embodiment, the operation of the SE unit 710 and CMOD unit 325 ofFIG. 7 is such that the signals x_(n)(t), . . . , x_(n+L1−1)(t) aregenerated as x_(1+n)(t)=x_(i)(t) for i=0, . . . , L₁−1 and the signalsx_(−L2)(t), . . . , x⁻¹(t) as x_(−i)(t)=x_(n−i)(t) for i=1, . . . , L₂.

A process that may be implemented by a transmitter 230 to accomplishthis is now further described with reference to FIG. 9. The input to theprocess exemplified in FIG. 9 are the symbols x_(k,0), . . . , x_(k,n−1)as may be generated by the TCC unit of e.g. FIG. 7. The symbols x_(k,0),. . . , x_(k,n−1) are received in Step 910. In Step 920 the symbolsx_(k,n), . . . , x_(k,n+L1−1) and x_(k,−L2), . . . , x_(k,−1) aregenerated. The symbols x_(k,n), . . . , x_(k,n+L1−1) may be generated bythe SE unit 710 of FIG. 7 as x_(k,i+n)=x_(i) for i=0, . . . , L₁−1. Thesymbols x_(k,−L2), . . . , x_(k,−1) may be generated by the SE unit 710of FIG. 7 as x_(−i)=x_(n−i) for i=1, . . . , L₂.

In Step 930, the signals x_(n)(t), . . . , x_(n+L1−1) and x_(−L2)(t), .. . , x⁻¹(t) may be generated by modulating a pulse shape p(t) by thesymbols x_(k,n), . . . , x_(k,n+L1−1) and x_(k,−L2), . . . , x_(k,−1),respectively. Furthermore, the signals x₀(t), . . . , x_(n−1)(t) may begenerated by modulating a pulse shape p(t) by the symbols x_(k,0), . . ., x_(k,n−1). The signals x₀(t), . . . . , x_(n−1)(t) may be transmittedon signal paths 810 of FIGS. 8A, 8B. The signals x_(n)(t), . . . ,x_(n+L1−1) and x_(−L2)(t), . . . , x⁻¹(t) may be transmitted on SEextension signal paths 830 and 820, respectively. In an embodiment, theintegers L₁ and/or L₂ may be chosen larger than or equal to the integeri for which h_(i)(t) is negligible small for all t.

In an embodiment, the addition of the SE signal paths 720 of FIG. 7together with the operation the SE unit 710 is such that the crosstalkmatrix H(t) becomes a circulant matrix. How this may be achieved is nowfurther illustrated for a transmitter operating on n=8 signal paths.

FIG. 10 exemplifies a transmitter 230 that may operate according topresent teachings. For this purpose the transmitter 230 may comprise aDMOD unit 315, a TCC unit 320, SE units 1004, 1008 and a CMOD unit 325.The transmitter exemplified in FIG. 10 operates over channel 110. Thechannel 110 comprises n=8 signal paths 1010 on which signals x₀(t), . .. , x₇(t) are transmitted. The channel 110 further comprises the SEsignal paths 1020 and 1030.

The channel 110 for signals x₀(t), . . . , x₇(t) may be defined by an8×8 crosstalk matrix H(t). It is assumed that the SE signal paths 1020,1030 render each of the signal paths 1010 physically equivalent orapproximately equivalent such that the crosstalk matrix H(t) has theform of Eqn. 9. Furthermore, it is assumed that h_(i)(t) is negligiblesmall for i>2 in which case the crosstalk matrix H(t) is given by Eqn.10.

The SE unit 1004 may generate numbers x_(k,8) and x_(k,9) based on thenumbers x_(k,0), . . . , x_(k,7) which are generated by the TCC unit320. The numbers x_(k,8) and x_(k,9) may be generated as x_(k,8)=x₀ andx_(k,9)=x₁. The CMOD unit 325 may generate signals x_(k,8)(t) andx_(k,9)(t) based on numbers x_(k,8) and x_(k,9) by PAM modulation. Thesignals x_(k,8)(t) and x_(k,9)(t) may be transmitted on SE signal paths1020.

The SE unit 1008 may generate numbers x_(k,−2) and x_(k,n−1) based onthe numbers x_(k,0), . . . , x_(k,7) which are generated by the TCC unit320. The numbers x_(k,−2) and x_(k,n−1) may be generated as x_(k,−2)=x₆and x_(k,−1)=x₇. The CMOD unit 325 may generate signals x_(k,−2)(t) andx_(k,−1)(t) based on numbers x_(k,−2) and x_(k,−1) by PAM modulation.The signals x_(k,−2)(t) and x_(k,−1)(t) may be transmitted on SE signalpaths 1030.

The effect of such operation of the transmitter 230 is that the relationbetween the signals y₀(t), . . . , y₇(t) and signals x₀(t), . . . ,x₇(t) may be described by crosstalk matrix H(t) that has becomecirculant. This may be observed by considering the relation between thesignals y⁻²(t), . . . , y₂(t) which may be expressed as Eqn. 11.

$\begin{matrix}{\begin{bmatrix}{y_{- 2}(t)} \\{y_{- 1}(t)} \\{y_{0}(t)} \\{y_{1}(t)} \\{y_{2}(t)} \\{y_{3}(t)} \\{y_{4}(t)} \\{y_{5}(t)} \\{y_{6}(t)} \\{y_{7}(t)} \\{y_{8}(t)} \\{y_{9}(t)}\end{bmatrix} = {\begin{bmatrix}{h_{0}(t)} & {h_{1}(t)} & {h_{2}(t)} & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\{h_{1}(t)} & {h_{0}(t)} & {h_{1}(t)} & {h_{2}(t)} & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\{h_{2}(t)} & {h_{1}(t)} & {h_{0}(t)} & {h_{1}(t)} & {h_{2}(t)} & 0 & 0 & 0 & 0 & 0 & 0 & 0 \\0 & {h_{2}(t)} & {h_{1}(t)} & {h_{0}(t)} & {h_{1}(t)} & {h_{2}(t)} & 0 & 0 & 0 & 0 & 0 & 0 \\0 & 0 & {h_{2}(t)} & {h_{1}(t)} & {h_{0}(t)} & {h_{1}(t)} & {h_{2}(t)} & 0 & 0 & 0 & 0 & 0 \\0 & 0 & 0 & {h_{2}(t)} & {h_{1}(t)} & {h_{0}(t)} & {h_{1}(t)} & {h_{2}(t)} & 0 & 0 & 0 & 0 \\0 & 0 & 0 & 0 & {h_{2}(t)} & {h_{1}(t)} & {h_{0}(t)} & {h_{1}(t)} & {h_{2}(t)} & 0 & 0 & 0 \\0 & 0 & 0 & 0 & 0 & {h_{2}(t)} & {h_{1}(t)} & {h_{0}(t)} & {h_{1}(t)} & {h_{2}(t)} & 0 & 0 \\0 & 0 & 0 & 0 & 0 & 0 & {h_{2}(t)} & {h_{1}(t)} & {h_{0}(t)} & {h_{1}(t)} & {h_{2}(t)} & 0 \\0 & 0 & 0 & 0 & 0 & 0 & 0 & {h_{2}(t)} & {h_{1}(t)} & {h_{0}(t)} & {h_{1}(t)} & {h_{2}(t)} \\0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & {h_{2}(t)} & {h_{1}(t)} & {h_{0}(t)} & {h_{1}(t)} \\0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & 0 & {h_{2}(t)} & {h_{1}(t)} & {h_{0}(t)}\end{bmatrix}\begin{bmatrix}{x_{6}(t)} \\{x_{7}(t)} \\{x_{0}(t)} \\{x_{1}(t)} \\{x_{2}(t)} \\{x_{3}(t)} \\{x_{4}(t)} \\{x_{5}(t)} \\{x_{6}(t)} \\{x_{7}(t)} \\{x_{0}(t)} \\{x_{1}(t)}\end{bmatrix}}} & \lbrack {{Eqn}.\mspace{14mu} 11} \rbrack\end{matrix}$

From Eqn. 11 it may be derived that in terms of signals x₀(t), . . . ,x₇(t) the received signals y₀(t), . . . , y₇(t) may be expressed as Eqn.12. The 8×8 matrix in Eqn. 12 may be interpreted as the effectivecrosstalk matrix H(t). The effective crosstalk matrix is still referredto as the crosstalk matrix for signal paths 1010. As is clear from Eqn.12 the crosstalk matrix H(t) has become circulant.

$\mspace{675mu}{{\lbrack {{Eqn}.\mspace{14mu} 12} \rbrack\begin{bmatrix}{y_{0}(t)} \\{y_{1}(t)} \\{y_{2}(t)} \\{y_{3}(t)} \\{y_{4}(t)} \\{y_{5}(t)} \\{y_{6}(t)} \\{y_{7}(t)}\end{bmatrix}} = {\begin{bmatrix}{h_{0}(t)} & {h_{1}(t)} & {h_{2}(t)} & 0 & 0 & 0 & {h_{2}(t)} & {h_{1}(t)} \\{h_{1}(t)} & {h_{0}(t)} & {h_{1}(t)} & {h_{2}(t)} & 0 & 0 & 0 & {h_{2}(t)} \\{h_{2}(t)} & {h_{1}(t)} & {h_{0}(t)} & {h_{1}(t)} & {h_{2}(t)} & 0 & 0 & 0 \\0 & {h_{2}(t)} & {h_{1}(t)} & {h_{0}(t)} & {h_{1}(t)} & {h_{2}(t)} & 0 & 0 \\0 & 0 & {h_{2}(t)} & {h_{1}(t)} & {h_{0}(t)} & {h_{1}(t)} & {h_{2}(t)} & 0 \\0 & 0 & 0 & {h_{2}(t)} & {h_{1}(t)} & {h_{0}(t)} & {h_{1}(t)} & {h_{2}(t)} \\{h_{2}(t)} & 0 & 0 & 0 & {h_{2}(t)} & {h_{1}(t)} & {h_{0}(t)} & {h_{1}(t)} \\{h_{1}(t)} & {h_{2}(t)} & 0 & 0 & 0 & {h_{2}(t)} & {h_{1}(t)} & {h_{0}(t)}\end{bmatrix}\begin{bmatrix}{x_{0}(t)} \\{x_{1}(t)} \\{x_{2}(t)} \\{x_{3}(t)} \\{x_{4}(t)} \\{x_{5}(t)} \\{x_{6}(t)} \\{x_{7}(t)}\end{bmatrix}}}$

In a similar way an effective sampled crosstalk matrix H may be definedrelating the numbers y_(k,0), . . . , y_(k,7) and x_(k,0), . . . ,x_(k,7) according to Eqn. 7 by the sampled crosstalk matrix H. Thissampled crosstalk matrix H has become circulant also.

As one of skill in the art will recognize the embodiments exemplifiedshould not be considered limiting. For instance the embodiments may beextended to operate on a general number of signal paths n. A differentnumbers of SE signal paths may be used. Furthermore, different spatialconfigurations of the signal paths may be used leading to symmetrybetween the signals transmitted on the signal paths.

Other methods to induce symmetry between the signals conveyed on thesignal paths exist. Several embodiments that may lead to circulantcrosstalk matrices are now further described with reference to FIG.11-14.

FIG. 11 exemplifies the cross section of four signal paths 1110, 1112,1114, 1116 surrounded by a medium 1120. The cross section is aligned tothe x and y axis of a Cartesian coordinate system for illustrationalpurpose. For this case the direction of propagation is the direction ofthe z-axis.

The signal paths exemplified in FIG. 11 may be for instance conductorsin which case FIG. 11 exemplifies a cross section of a MCTL. It isassumed that the cross section is substantially similar along thedirection of propagation. This may be understood with regard to MCTLs asa uniform cross section along the direction of propagation. For MCTLs,the medium 1120 may be a dielectric material.

The crosstalk matrix H(t) defining the transfer of the signal paths1110, 1112, 1116, 1114 is circulant due to the geometrical symmetry ofthe cross section. As will be clear to those of skill in the art, forthe signal paths in FIG. 11 the crosstalk matrix H(t) has the form givenby Eqn. 13.

$\begin{matrix}{{H(t)} = \begin{bmatrix}{h_{0}(t)} & {h_{1}(t)} & {h_{2}(t)} & {h_{1}(t)} \\{h_{1}(t)} & {h_{0}(t)} & {h_{1}(t)} & {h_{2}(t)} \\{h_{2}(t)} & {h_{1}(t)} & {h_{0}(t)} & {h_{1}(t)} \\{h_{1}(t)} & {h_{2}(t)} & {h_{1}(t)} & {h_{0}(t)}\end{bmatrix}} & \lbrack {{Eqn}.\mspace{14mu} 13} \rbrack\end{matrix}$

In Eqn. 13 the transfer from the input of signal paths 1110, 1112, 1114,1116 to the output of signal paths 1110, 1112, 1114, 1116 is given bythe first, second, third and fourth column of H(t), respectively.

In accordance to at least one embodiment, the cross section of n signalpaths has a discrete rotational symmetry of order n. A cross section hasa discrete rotational symmetry of order n when it is physicallyindistinguishable when rotated by an integer multiple of 360/n degrees.In such case the crosstalk matrix H(t) is a circulant matrix. The crosssection exemplified in FIG. 11 has a discrete rotational symmetry oforder 4.

The signal paths 1110 may be conductors in which FIG. 11 is an exampleof a MCTL. In such case it may be preferred to add additional conductorsthat may be grounded. FIG. 11 shows a cross section of a MCTL comprisingfour conductors 1210 which are surrounded by a dielectric material 1220.Furthermore, the MCTL comprises ground planes 1230 and 1240. The top andbottom ground planes 1230 may be implemented as a conventional metallayer in a PCB design. The ground planes 1240 on the side may beimplemented by a set of vias that are distributed along the length ofthe MCTL structure.

An example of a cross section of a channel comprising n=8 signal pathsthat has a discrete rotational symmetry of order 8 is now furtherdescribed with reference to FIG. 13. The cross section comprises signalpaths 1310 that are surrounded by a material 1320. The medium itself maybe surrounded by another material 1330.

The cross section of FIG. 13 may be implemented as for instance a cablewhere the signal paths 1310 are conductors. In such case, the medium1320 may be a dielectric material and material 1330 may be an additionalconductor that can act as a ground shield.

The cross section of FIG. 13 may also be implemented as an optical fiberwhere the signal paths 1310 have a higher refractive index compared tothe surrounding medium 1320. This allows light waves to be guided alongthe signal paths 1310.

In another embodiment, the symmetry between the signals x₀(t), . . . ,x_(n−1)(t) propagating on the signals paths may be achieved by atwisting or permutation of the signal paths along the direction ofpropagation. FIG. 14 shows a schematic overview of configuration of foursignal paths 1410 that are twisted. The signal order of the signal pathsmay be exchanged at several locations to perform the twisting. Thesignal paths of FIG. 14 are twisted at locations 1420, 1422, 1424.

A channel comprising a linear array of n signal paths may be renderedcirculant by providing a set of n! sections of the signal paths whereeach section corresponds to a unique permutation of the signal paths.

In accordance to at least one embodiment of the invention, the channel110 is defined by a physical structure that renders the crosstalk matrixH(t) circulant by a twisting or permutation along sections of n signalpaths.

Additional Embodiments

Several processes that may be implemented by transmitters and receiversoperating according to present teachings are now further described withreference to FIG. 15-17.

FIG. 15 exemplifies a process that may be implemented by a transmitterin accordance with at least one embodiment of the invention. In Step1510, a set of k information bits is received. These information bitsare denoted by b₀, . . . , b_(k-1). In Step 1520, the k information bitsare mapped to a set of n constellation symbols s₀, . . . , s_(n−1). InStep 1530, the inverse of the circulant sampled crosstalk matrix H isapplied to s₀, . . . , s_(n−1) to generate the symbols x₀, . . . ,x_(n−1). In Step 1540 a set of n continuous-time signals are generatedwhich are denoted by x₀(t), . . . , x_(n−1)(t). The signals x₀(t), . . ., x_(n−1)(t) may be generated by pulse amplitude modulation where thepulse amplitudes are given by the symbols x₀, . . . , x_(n−1). Thesignals x₀(t), . . . , x_(n−1)(t) may be transmitted on n signal pathsin Step 1550.

FIG. 16 exemplifies another process that may be implemented by atransmitter in accordance with at least one embodiment of the invention.In Step 1610, n symbols x₀, . . . , x_(n−1) representing information arereceived. In Step 1620, L symbols x_(n), . . . , x_(n+L−1) are generatedas a subset of symbols x₀, . . . , x_(n−1). This may be performed bysetting x_(i+n)=x_(i) for i=0, . . . , L−1. In Step 1630, a set of n+Lcontinuous-time signals are generated which are denoted by x₀(t), . . ., x_(n+L−1)(t). The signals x₀(t), . . . , x_(n+L−1)(t) may be generatedby pulse amplitude modulation where the pulse amplitudes are given bythe symbols x₀, . . . , x_(n+L−1). The signals x₀(t), . . . ,x_(n+L−1)(t) may be transmitted on n+L signal paths in Step 1640.

FIG. 17 exemplifies a process that may be implemented by a receiver inaccordance with at least one embodiment of the invention. In Step 1710,a set of n signals are received and/or sensed from a channel comprisingn signal paths. In Step 1720, n numbers or samples are generated fromthe n signals received. This may be accomplished by sampling the signalspresent on the signal paths. These samples are denoted by y₀, . . . ,y_(n−1). In Step 1730, the inverse of the circulant sampled crosstalkmatrix H is applied to the samples y₀, . . . , y_(n−1) to generate thesymbols z₀, . . . , z_(n−1). In Step 1740, the information transmittedis recovered from z₀, . . . , z_(n−1).

In accordance with at least one embodiment of the invention equalizationis used in conjunction with present teachings to mitigate inter-symbolinterference. Many forms of equalization are possible. For instance, thetransmitter 230 of FIG. 3 may employ a pulse shape p(t) that mitigatesinter-symbol interference. This may be achieved by applying aroot-raised-cosine filter to the pulse shape p(t). A transmitter mayalso employ a finite impulse response (FIR) filter. Equalization mayalso be implemented at the receiver. A receiver may for instanceimplement a continuous-time linear equalizer (CTLE).

A communication system designed according to the teachings of thisdisclosure may also use more sophisticated equalization techniques suchas discrete multi-tone (DMT) or orthogonal frequency divisionmultiplexing (OFDM).

The present teachings may also be used in conjunction with techniquesfor advanced modulation and error-correction. The DMOD unit as depictedin e.g. FIG. 3 may implement more sophisticated modulation and encodingthan PAM modulation. In general the DMOD may map k information bits toelements of an n dimensional signal constellation in e.g. n dimensionalEuclidian space. This mapping may even include the encoding of k bitsinto a code word from an error-correcting code such as a low-densityparity-check code or Reed-Solomon code. The coordinates of the resultingcode word may consecutively be mapped to elements of a signalconstellation. Many design choices exists as known to those of skill inthe art.

The present teachings may be combined with other techniques used incommunications and chip-to-chip communications. Examples areclock-and-data-recovery (CDR), synchronization, channel estimation,error-control encoding and decoding, framing, etc.

The present teachings may not only be useful for communication ofinformation. The teachings may also be used for information storage. Inthis setting, the signal paths may comprise the physical storage cells.These storage cells are often placed in physical vicinity and mayinterfere with each other during reading and writing of information. Agood example of this is a DRAM where information is stored on capacitorsand these capacitors may interfere with each other and therefor leadingto crosstalk.

FIG. 18 exemplifies a cross section of a DRAM chip comprising a groundsubstrate 1820 and four capacitor plates 1810. The capacitor plates 1810may have a cross capacitance between each other and this may causecrosstalk. According to the present teachings, dummy capacitor platesmay be used as shown in FIG. 19. FIG. 19 exemplifies the capacitorplates 1910 with two dummy capacitor plates 1912.

The read-write circuitry used to store information to the DRAM cells mayemploy a TCC unit and a SE unit to render the equivalent capacitancematrix circulant. In this way crosstalk between the capacitor plates maybe cancelled. The advantage is that the capacitor plates may be placedcloser to one other and thereby increasing the density of the DRAM.

FIG. 20 exemplifies read-and-write (RW) circuitry 2010 for a DRAM. FIG.20 exemplifies RW circuitry 2010 that comprises a TCC unit 2030 and a SEunit 2040. The information to be stored is available in the source 2020.The TCC unit 2030 may apply the inverse of a circulant matrix and storeinformation on signal paths and storage cells 2050. The SE unit 2040 maygenerate symbols and/or signals to be stored on signal paths and storagecells 2060 such that the crosstalk between the symbols stored on signalpaths 2050 may be described by a circulant matrix. The RW circuitry maycomprise other functionality as required for a proper functioning of theDRAM.

The present teachings may be used to create very high-densitymulti-conductor transmission lines. The wires of on-chip links and PCBbackplanes may be placed very close to another. Therefore the amount ofinformation that may be transmitted per square micrometers of crosssection may be increased substantially since crosstalk may efficientlybe cancelled. The present teachings may also be used for siliconinterposers and TSVs.

Another application is very high-density cables. A cross section of acable as exemplified in e.g. FIG. 13 may be suitable to create cablesfor which crosstalk is easily cancelled and that allow for transmissionof a very large amount of data.

Some embodiments are described herein, including the best mode known tothe inventors. Further embodiments can be envisioned by one of ordinaryskill in the art after reading this disclosure. In other embodiments,combinations or sub-combinations of the above disclosed invention can beadvantageously made. The example arrangements of components are shownfor purposes of illustration and it should be understood thatcombinations, additions, re-arrangements, and the like are contemplatedin alternative embodiments of the present invention. Thus, while theinvention has been described with respect to exemplary embodiments, oneskilled in the art will recognize that numerous modifications arepossible.

For example, the processes described herein may be implemented usinganalog or digital hardware components, software components, and/or anycombination thereof. The specification and drawings are, accordingly, tobe regarded in an illustrative rather than a restrictive sense. It will,however, be evident that various modifications and changes may be madethereunto without departing from the broader spirit and scope of theinvention as set forth in the claims and that the invention is intendedto cover all modifications and equivalents within the scope of thefollowing claims.

The use of the terms “a” and “an” and “the” and similar referents in thecontext of describing embodiments (especially in the context of thefollowing claims) are to be construed to cover both the singular and theplural, unless otherwise indicated herein or clearly contradicted bycontext. The terms “comprising,” “having,” “including,” and “containing”are to be construed as open-ended terms (i.e., meaning “including, butnot limited to,”) unless otherwise noted. The term “connected” is to beconstrued as partly or wholly contained within, attached to, or joinedtogether, even if there is something intervening. Recitation of rangesof values herein are merely intended to serve as a shorthand method ofreferring individually to each separate value falling within the range,unless otherwise indicated herein, and each separate value isincorporated into the specification as if it were individually recitedherein. All methods described herein can be performed in any suitableorder unless otherwise indicated herein or otherwise clearlycontradicted by context. The use of any and all examples, or exemplarylanguage (e.g., “such as”) provided herein, is intended merely to betterilluminate embodiments and does not pose a limitation on the scopeunless otherwise claimed. No language in the specification should beconstrued as indicating any non-claimed element as essential to thepractice of at least one embodiment.

All references, including publications, patent applications, andpatents, cited herein are hereby incorporated by reference to the sameextent as if each reference were individually and specifically indicatedto be incorporated by reference and were set forth in its entiretyherein.

As will be appreciated by one skilled in the art, aspects of the presentinvention may be embodied as a system, method or computer programproduct. Accordingly, aspects of the present invention may take the formof an entirely hardware embodiment, an entirely software embodiment(including firmware, resident software, micro-code, etc.) or anembodiment combining software and hardware aspects that may allgenerally be referred to herein as a “circuit,” “module” or “system.”Furthermore, aspects of the present invention may take the form of acomputer program product embodied in one or more computer readablemedium(s) having computer readable program code embodied thereon.

Any combination of one or more computer readable medium(s) may beutilized. The computer readable medium may be a computer readable signalmedium or a computer readable storage medium. A computer readablestorage medium may be, for example, but not limited to, an electronic,magnetic, optical, electromagnetic, infrared, or semiconductor system,apparatus, or device, or any suitable combination of the foregoing. Morespecific examples (a non-exhaustive list) of the computer readablestorage medium would include the following: an electrical connectionhaving one or more wires, a portable computer diskette, a hard disk, arandom access memory (RAM), a read-only memory (ROM), an erasableprogrammable read-only memory (EPROM or Flash memory), an optical fiber,a portable compact disc read-only memory (CD-ROM), an optical storagedevice, a magnetic storage device, or any suitable combination of theforegoing. In the context of this document, a computer readable storagemedium may be any tangible medium that can contain, or store a programfor use by or in connection with an instruction execution system,apparatus, or device.

A computer readable signal medium may include a propagated data signalwith computer readable program code embodied therein, for example, inbaseband or as part of a carrier wave. Such a propagated signal may takeany of a variety of forms, including, but not limited to,electro-magnetic, optical, or any suitable combination thereof. Acomputer readable signal medium may be any computer readable medium thatis not a computer readable storage medium and that can communicate,propagate, or transport a program for use by or in connection with aninstruction execution system, apparatus, or device.

Program code embodied on a computer readable medium may be transmittedusing any appropriate medium, including but not limited to wireless,wireline, optical fiber cable, RF, etc., or any suitable combination ofthe foregoing. Computer program code for carrying out operations foraspects of the present invention may be written in any combination ofone or more programming languages, including an object orientedprogramming language such as Java, Smalltalk, C++ or the like andconventional procedural programming languages, such as the “C”programming language or similar programming languages. The program codemay execute entirely on the user's computer, partly on the user'scomputer, as a stand-alone software package, partly on the user'scomputer and partly on a remote computer or entirely on the remotecomputer or server. In the latter scenario, the remote computer may beconnected to the user's computer through any type of network, includinga local area network (LAN) or a wide area network (WAN), or theconnection may be made to an external computer (for example, through theInternet using an Internet Service Provider).

Aspects of the present invention are described above with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems) and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer program instructions. These computer program instructions maybe provided to a processor of a general purpose computer, specialpurpose computer, or other programmable data processing apparatus toproduce a machine, such that the instructions, which execute via theprocessor of the computer or other programmable data processingapparatus, create means for implementing the functions/acts specified inthe flowchart and/or block diagram block or blocks.

These computer program instructions may also be stored in a computerreadable medium that can direct a computer, other programmable dataprocessing apparatus, or other devices to function in a particularmanner, such that the instructions stored in the computer readablemedium produce an article of manufacture including instructions whichimplement the function/act specified in the flowchart and/or blockdiagram block or blocks.

The computer program instructions may also be loaded onto a computer,other programmable data processing apparatus, or other devices to causea series of operational steps to be performed on the computer, otherprogrammable apparatus or other devices to produce a computerimplemented process such that the instructions which execute on thecomputer or other programmable apparatus provide processes forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks.

The invention claimed is:
 1. A method of transmitting symbolsrepresenting information over a channel comprising at least four signalpaths with at least four pulse amplitude modulation signals where thecrosstalk between the symbols due to transmission on the channel isdescribed by a crosstalk matrix, the method comprising: receiving afirst set of symbols representing the information; forming a first setof signals comprising at least four signals, by pulse amplitudemodulation of a pulse shape where the pulse amplitudes are based atleast in part on the first set of symbols; forming a second set ofsignals consisting of a subset of the first set of signals; dividing thesignal paths into a first group of signal paths and a second group ofsignal paths; providing the first set of signals for transmission overthe first group of signal paths; and providing the second set of signalsfor transmission over the second group of signal paths causing thecrosstalk matrix to be circulant, wherein crosstalk between the symbolsis cancelled by a transmitter or receiver with less than quadraticcomplexity with respect to the number of signal paths.
 2. The method ofclaim 1 where the pulse shape is a non-return-to-zero pulse shape orreturn-to-zero pulse shape.
 3. The method of transmitting information inaccordance with claim 1, where the first set of symbols is formed byapplication of the inverse of the circulant sampled crosstalk matrix toa second set of symbols representing the information.
 4. The method ofclaim 3 where the application of the inverse of the circulant sampledcrosstalk matrix comprises a fast Fourier transform.
 5. The method ofclaim 1 where the signals paths comprise at least one of electricalconductors, electrical waveguides, or optical waveguides.
 6. A method oftransmitting symbols representing information over a channel comprisingn signal paths with at least n pulse amplitude modulation signals wherethe crosstalk between the symbols due to transmission on the channel isdescribed by a crosstalk matrix, the method comprising: providing nsignal paths in a configuration where the cross section of the signalpaths has a discrete rotational symmetry of order n, wherein n is aninteger larger than three; receiving a first set of symbols representingthe information; forming a first set of signals by pulse amplitudemodulation of a pulse shape where the pulse amplitudes are based atleast in part on the first set of symbols; and providing the first setof signals for transmission over the signal paths such causing thecrosstalk matrix to be circulant, wherein a second set of symbolsrepresenting information is formed based on the first set of symbols,wherein crosstalk between the symbols is cancelled by a transmitter orreceiver with less than quadratic complexity with respect to the numberof signal paths.
 7. The method of claim 6, where the first set ofsymbols is formed by application of the inverse of the circulant sampledcrosstalk matrix to a second set of symbols representing information. 8.The method of claim 6 where the pulse shape is a non-return-to-zeropulse shape or return-to-zero pulse shape.
 9. The method of claim 7where the inverse of the circulant sampled crosstalk matrix comprises afast Fourier transform.
 10. The method of claim 6 where the signal pathsare one of electrical conductors, electrical waveguides, or opticalwaveguides.
 11. The method of claim 1 where the first set of symbolsrepresenting the information comprises symbols that are taken from anM-PAM signal constellation where M is an integer equal to one of 2, 3,4, 8,
 16. 12. The method of claim 1 where the signal paths areconfigured in a linear array.